home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / src / X11 / wais / waisgate / HTHistory.h < prev    next >
C/C++ Source or Header  |  1995-05-09  |  3KB  |  113 lines

  1. /*  */
  2.  
  3. #ifndef HTHISTORY_H
  4. #define HTHISTORY_H
  5.  
  6. #include "HTAnchor.h"
  7.  
  8. #ifdef SHORT_NAMES
  9. #define HTHistory_record                HTHiReco
  10. #define HTHistory_backtrack             HTHiBack
  11. #define HTHistory_canBacktrack          HTHiCaBa
  12. #define HTHistory_moveBy                HTHiMoBy
  13. #define HTHistory_canMoveBy             HTHiCaMo
  14. #define HTHistory_read                  HTHiRead
  15. #define HTHistory_recall                HTHiReca
  16. #define HTHistory_count                 HTHiCoun
  17. #define HTHistory_leavingFrom           HTHiLeFr
  18. #endif
  19.  
  20. /*                              Navigation
  21. **                              ==========
  22. */
  23.  
  24. /*              Record the jump to an anchor
  25. **              ----------------------------
  26. */
  27.  
  28. extern void HTHistory_record
  29.   PARAMS(
  30.     (HTAnchor * destination)
  31.   );
  32.  
  33. /*              Go back in history (find the last visited node)
  34. **              ------------------
  35. */
  36.  
  37. extern HTAnchor * HTHistory_backtrack
  38.   NOPARAMS;  /* FIXME: Should we add a `sticky' option ? */
  39.  
  40. extern BOOL HTHistory_canBacktrack
  41.   NOPARAMS;
  42.  
  43. /*              Browse through references in the same parent node
  44. **              -------------------------------------------------
  45. **
  46. **      Take the n-th child's link after or before the one we took to get here.
  47. **      Positive offset means go towards most recently added children.
  48. */
  49.  
  50. extern HTAnchor * HTHistory_moveBy
  51.   PARAMS(
  52.      (int offset)
  53.      );
  54.  
  55. extern BOOL HTHistory_canMoveBy
  56.   PARAMS(
  57.      (int offset)
  58.      );
  59.  
  60. #define HTHistory_next (HTHistory_moveBy (+1))
  61. #define HTHistory_canNext (HTHistory_canMoveBy (+1))
  62. #define HTHistory_previous (HTHistory_moveBy (-1))
  63. #define HTHistory_canPrevious (HTHistory_canMoveBy (-1))
  64.  
  65.  
  66. /*                              Retrieval
  67. **                              =========
  68. */
  69.  
  70. /*              Read numbered visited anchor (1 is the oldest)
  71. **              ----------------------------
  72. */
  73.  
  74. extern HTAnchor * HTHistory_read
  75.   PARAMS(
  76.     (int number)
  77.   );
  78.  
  79. /*              Recall numbered visited anchor (1 is the oldest)
  80. **              ------------------------------
  81. **      This reads the anchor and stores it again in the list, except if last.
  82. */
  83.  
  84. extern HTAnchor * HTHistory_recall
  85.   PARAMS(
  86.     (int number)
  87.   );
  88.  
  89. /*              Number of Anchors stored
  90. **              ------------------------
  91. **
  92. **      This is needed in order to check the validity of certain commands
  93. **      for menus, etc.
  94. (not needed for now. Use canBacktrack, etc.)
  95. extern int HTHistory_count NOPARAMS;
  96. */
  97.  
  98. /*              Change last history entry
  99. **              -------------------------
  100. **
  101. **      Sometimes we load a node by one anchor but leave by a different
  102. **      one, and it is the one we left from which we want to remember.
  103. */
  104. extern void HTHistory_leavingFrom
  105.   PARAMS(
  106.     (HTAnchor * anchor)
  107.   );
  108.  
  109. #endif /* HTHISTORY_H */
  110. /*
  111.  
  112.     */
  113.